Vipps

Vipps is a Norwegian mobile payment application designed for smartphones developed by DNB. Vipps was released May 30, 2015 and, having reached 1 million users by November 5, 2015, Vipps became Norway's largest payment application. Although Vipps was developed by DNB, customers of any Norwegian bank can use it.

Vipps Specific Notes

As a merchant, you're allowed to process regular payments without having a Norwegian entity.

  • A orderId must be unique for the MSN (Merchant Serial Number, the id of the sale unit). The orderId is case sensitive. The orderId does not need to be globally unique, so several MSNs may use the same orderId, as long as it is unique for each sale unit.
  • While the minimum length for orderId technically is just one character, we strongly recommend to use orderId format that makes it easy to search for them in logs. This means that acme-shop-123-order123abc is a better format than 123456.
  • If you ever have a problem that requires us to search in our logs, we need orderIds that are "unique enough" to actually find them. An orderId that is just a number may not be possible to find, and then we are not able to help.
  • A good starting point is to use UUID, universally unique identifiers, on the format 123e4567-e89b-12d3-a456-426614174000. UUIDs are not always the most human-friendly, so see the other tips too.
  • The maximum length of an orderId is 50 alphanumeric characters: a-z, A-Z, 0-9 and - (hyphen). Leading zeros should be avoided, as some applications (like Excel) tend to remove them, and this may cause misunderstandings.
  • If you have multiple sale units, prefixing the orderId with the MSN for each sale unit is recommended: If the MSN is 654321, the orderIds could be 654321-acme-shop-123-order123abc.
  • If you need to make multiple attempts at paying the same order, you can add a suffix to the orderId to make it unique: If your internal orderId is acme-shop-123-order123abc you can add -1 to get a unique Vipps orderId acme-shop-123-order123abc-1 for the first attempt, acme-shop-123-order123abc-2 for the second, etc. This is useful when a customer:
    • Adds a product to the cart
    • Goes to the payment page and selects Vipps
    • Gets the payment request in Vipps but cancels (or does nothing)
    • Adds another product to the same cart (or order)
    • Repeats steps 2 and 3.
To find out how to integrate with Vipps using our merchant API, see Integrating using the Merchant API and more specifically, the createPaymentRequest method.

Vipps Subscriptions Specific Notes

This integration is only available for Norwegian entities.

Agreements

An agreement is used to provide subscription service to sell to customers.

  • Agreements can be set by sending a createPaymentRequest request. For more information about setup agreements please visit Setup Agreement page.
  • Only recurring agreements are supported.
  • When setup an agreement, the customer should accept the agreement in the Vipps app.
  • Not all parameters are required, but the user will see in the Agreement screen the amount, product name specified in orderLines[][itemId] and description specified in orderLines[][description]. It's recommended to use them to ensure a good user experience.
  • When setup the agreement, Vipps requires a link to a page where the customer can manage the agreement. This link should be specified in agreement[admin_url].

Charges

  • Agreements can be charges by sending a chargeSubscription request. For more information about charging agreements please visit Charge Agreement page.
  • Only charge agreement requests are supported.
  • Charge payments are collected automatically by Vipps within 2 days after merchant scheduled it with a charge request, so there is no need for the customer to swipe.
  • Capture is handled by Vipps
  • Vipps will retry the charge for the number of days specified in agreement[retry_days] request parameter. The maximum number of retryDays is 14.
  • When charges are shown to users in Vipps, they will have a description that can be specified in the orderLines[][description] parameter sent in request. Please see Charge Agreement page.

Refunds

  • Charge Agreement payments can be refund by sending a refundCapturedReservation request.
  • Charged agreement amount can be refunded full or partially as long as the refund amount is less or equal to already refunded amount.
  • Refunds are allowed up to 365 days after the capture date.
  • One order line with description parameter is required to be sent in the refund request in order to ensure a good customer experience.itemId, unitPrice and quantity order line parameters might be required for this order line, but that parameters are not relevant to the Refund Vipps charge request.

Release Agreement